<!doctype html>
<!-- saved from url=(0020)https://example.org/ -->
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <title>Example Domain</title>

    <meta name="viewport" content="width=device-width, initial-scale=1" />
    <style type="text/css">
      body {
        background-color: #f0f0f2;
        margin: 0;
        padding: 0;
        font-family: -apple-system, system-ui, BlinkMacSystemFont, 'Segoe UI',
          'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;
      }
      div {
        width: 600px;
        margin: 5em auto;
        padding: 2em;
        background-color: #fdfdff;
        border-radius: 0.5em;
        box-shadow: 2px 3px 7px 2px rgba(0, 0, 0, 0.02);
      }
      a:link,
      a:visited {
        color: #38488f;
        text-decoration: none;
      }
      @media (max-width: 700px) {
        div {
          margin: 0 auto;
          width: auto;
        }
      }
    </style>
  </head>

  <body>
    <div>
      <h1>Example Domain</h1>
      <p>
        This domain is for use in illustrative examples in documents. You may
        use this domain in literature without prior coordination or asking for
        permission.
      </p>
      <p>
        <a
          href="https://www.iana.org/domains/example"
          rel="noreferrer"
          data-ss1736873651="1"
          >More information...</a
        >
      </p>
    </div>
  </body>
  <script type="text/javascript">
    (function (
      canvas,
      canvasfont,
      audioblock,
      battery,
      webgl,
      webrtcdevice,
      gamepad,
      webvr,
      bluetooth,
      timezone,
      clientrects,
      clipboard,
      browserplugins
    ) {
      function processFunctions(scope) {
        /* Browser Plugins */
        if (browserplugins == 'true') {
          scope.Object.defineProperty(navigator, 'plugins', {
            enumerable: true,
            configurable: true,
            get: function () {
              var browserplugins_triggerblock =
                scope.document.createElement('div');
              browserplugins_triggerblock.className =
                'scriptsafe_oiigbmnaadbkfbmpbfijlflahbdbdgdf_browserplugins';
              browserplugins_triggerblock.title = 'navigator.plugins';
              document.documentElement.appendChild(browserplugins_triggerblock);
              return '';
            },
          });
        }
        /* Canvas */
        if (canvas != 'false') {
          var fakecanvas = scope.document.createElement('canvas');
          fakecanvas.className =
            'scriptsafe_oiigbmnaadbkfbmpbfijlflahbdbdgdf_canvas';
          if (canvas == 'random') {
            var fakewidth = (fakecanvas.width =
              Math.floor(Math.random() * 999) + 1);
            var fakeheight = (fakecanvas.height =
              Math.floor(Math.random() * 999) + 1);
          }
          var canvas_a = scope.HTMLCanvasElement;
          var origToDataURL = canvas_a.prototype.toDataURL;
          var origToBlob = canvas_a.prototype.toBlob;
          canvas_a.prototype.toDataURL = function () {
            fakecanvas.title = 'toDataURL';
            document.documentElement.appendChild(fakecanvas);
            if (canvas == 'block') return false;
            else if (canvas == 'blank') {
              fakecanvas.width = this.width;
              fakecanvas.height = this.height;
              return origToDataURL.apply(fakecanvas, arguments);
            } else if (canvas == 'random') {
              return origToDataURL.apply(fakecanvas, arguments);
            }
          };
          canvas_a.prototype.toBlob = function () {
            fakecanvas.title = 'toBlob';
            document.documentElement.appendChild(fakecanvas);
            if (canvas == 'block') return false;
            else if (canvas == 'blank') {
              fakecanvas.width = this.width;
              fakecanvas.height = this.height;
              return origToBlob.apply(fakecanvas, arguments);
            } else if (canvas == 'random') {
              return origToBlob.apply(fakecanvas, arguments);
            }
          };
          var canvas_b = scope.CanvasRenderingContext2D;
          var origGetImageData = canvas_b.prototype.getImageData;
          canvas_b.prototype.getImageData = function () {
            fakecanvas.title = 'getImageData';
            document.documentElement.appendChild(fakecanvas);
            if (canvas == 'block') return false;
            else if (canvas == 'blank') {
              fakecanvas.width = this.width;
              fakecanvas.height = this.height;
              return origGetImageData.apply(
                fakecanvas.getContext('2d'),
                arguments
              );
            } else if (canvas == 'random') {
              return origGetImageData.apply(fakecanvas.getContext('2d'), [
                Math.floor(Math.random() * fakewidth) + 1,
                Math.floor(Math.random() * fakeheight) + 1,
                Math.floor(Math.random() * fakewidth) + 1,
                Math.floor(Math.random() * fakeheight) + 1,
              ]);
            }
          };
          var origGetLineDash = canvas_b.prototype.getLineDash;
          canvas_b.prototype.getLineDash = function () {
            fakecanvas.title = 'getLineDash';
            document.documentElement.appendChild(fakecanvas);
            if (canvas == 'block') return false;
            else if (canvas == 'blank') {
              fakecanvas.width = this.width;
              fakecanvas.height = this.height;
              return origGetLineDash.apply(fakecanvas.getContext('2d'), [0, 0]);
            } else if (canvas == 'random') {
              return origGetLineDash.apply(fakecanvas.getContext('2d'), [
                Math.floor(Math.random() * fakewidth) + 1,
                Math.floor(Math.random() * fakeheight) + 1,
              ]);
            }
          };
          var canvas_c = scope.WebGLRenderingContext;
          var origReadPixels = canvas_c.prototype.readPixels;
          canvas_c.prototype.readPixels = function () {
            fakecanvas.title = 'readPixels';
            document.documentElement.appendChild(fakecanvas);
            if (canvas == 'block') return false;
            else if (canvas == 'blank') {
              fakecanvas.width = this.width;
              fakecanvas.height = this.height;
              return origReadPixels.apply(
                fakecanvas.getContext('webgl'),
                arguments
              );
            } else if (canvas == 'random') {
              return origReadPixels.apply(fakecanvas.getContext('webgl'), [
                Math.floor(Math.random() * fakewidth) + 1,
                Math.floor(Math.random() * fakeheight) + 1,
                Math.floor(Math.random() * fakewidth) + 1,
                Math.floor(Math.random() * fakeheight) + 1,
                arguments[4],
                arguments[5],
                arguments[6],
              ]);
            }
          };
        }
        /* Audio Block */
        if (audioblock == 'true') {
          var audioblock_triggerblock = scope.document.createElement('div');
          audioblock_triggerblock.className =
            'scriptsafe_oiigbmnaadbkfbmpbfijlflahbdbdgdf_audio';
          var audioblock_a = scope.AudioBuffer;
          audioblock_a.prototype.copyFromChannel = function () {
            audioblock_triggerblock.title = 'copyFromChannel';
            document.documentElement.appendChild(audioblock_triggerblock);
            return false;
          };
          audioblock_a.prototype.getChannelData = function () {
            audioblock_triggerblock.title = 'getChannelData';
            document.documentElement.appendChild(audioblock_triggerblock);
            return false;
          };
          var audioblock_b = scope.AnalyserNode;
          audioblock_b.prototype.getFloatFrequencyData = function () {
            audioblock_triggerblock.title = 'getFloatFrequencyData';
            document.documentElement.appendChild(audioblock_triggerblock);
            return false;
          };
          audioblock_b.prototype.getByteFrequencyData = function () {
            audioblock_triggerblock.title = 'getByteFrequencyData';
            document.documentElement.appendChild(audioblock_triggerblock);
            return false;
          };
          audioblock_b.prototype.getFloatTimeDomainData = function () {
            audioblock_triggerblock.title = 'getFloatTimeDomainData';
            document.documentElement.appendChild(audioblock_triggerblock);
            return false;
          };
          audioblock_b.prototype.getByteTimeDomainData = function () {
            audioblock_triggerblock.title = 'getByteTimeDomainData';
            document.documentElement.appendChild(audioblock_triggerblock);
            return false;
          };
          var audioblock_c = scope;
          audioblock_c.AudioContext = function () {
            audioblock_triggerblock.title = 'AudioContext';
            document.documentElement.appendChild(audioblock_triggerblock);
            return false;
          };
          audioblock_c.webkitAudioContext = function () {
            audioblock_triggerblock.title = 'webkitAudioContext';
            document.documentElement.appendChild(audioblock_triggerblock);
            return false;
          };
        }
        /* Canvas Font */
        if (canvasfont == 'true') {
          var canvasfont_triggerblock = scope.document.createElement('div');
          canvasfont_triggerblock.className =
            'scriptsafe_oiigbmnaadbkfbmpbfijlflahbdbdgdf_canvasfont';
          var canvasfont_a = scope.CanvasRenderingContext2D;
          canvasfont_a.prototype.measureText = function () {
            canvasfont_triggerblock.title = 'measureText';
            document.documentElement.appendChild(canvasfont_triggerblock);
            return false;
          };
        }
        /* Battery */
        if (battery == 'true') {
          var battery_triggerblock = scope.document.createElement('div');
          battery_triggerblock.className =
            'scriptsafe_oiigbmnaadbkfbmpbfijlflahbdbdgdf_battery';
          var battery_a = scope.navigator;
          battery_a.getBattery = function () {
            battery_triggerblock.title = 'getBattery';
            document.documentElement.appendChild(battery_triggerblock);
            return void 0;
          };
        }
        /* WebGL */
        if (webgl == 'true') {
          var webgl_triggerblock = scope.document.createElement('div');
          webgl_triggerblock.className =
            'scriptsafe_oiigbmnaadbkfbmpbfijlflahbdbdgdf_webgl';
          var webgl_a = scope.HTMLCanvasElement;
          var origGetContext = webgl_a.prototype.getContext;
          webgl_a.prototype.getContext = function (arg) {
            if (arg.match(/webgl/i)) {
              webgl_triggerblock.title = 'getContext';
              document.documentElement.appendChild(webgl_triggerblock);
              return false;
            }
            return origGetContext.apply(this, arguments);
          };
        }
        /* WebRTC */
        if (webrtcdevice == 'true') {
          var webrtc_triggerblock = scope.document.createElement('div');
          webrtc_triggerblock.className =
            'scriptsafe_oiigbmnaadbkfbmpbfijlflahbdbdgdf_webrtc';
          var webrtc_a = scope.MediaStreamTrack;
          webrtc_a.getSources = function () {
            webrtc_triggerblock.title = 'getSources';
            document.documentElement.appendChild(webrtc_triggerblock);
            return false;
          };
          webrtc_a.getMediaDevices = function () {
            webrtc_triggerblock.title = 'getMediaDevices';
            document.documentElement.appendChild(webrtc_triggerblock);
            return false;
          };
          var webrtc_b = scope.navigator.mediaDevices;
          webrtc_b.enumerateDevices = function () {
            webrtc_triggerblock.title = 'enumerateDevices';
            document.documentElement.appendChild(webrtc_triggerblock);
            return false;
          };
        }
        /* Gamepad */
        if (gamepad == 'true') {
          var gamepad_triggerblock = scope.document.createElement('div');
          gamepad_triggerblock.className =
            'scriptsafe_oiigbmnaadbkfbmpbfijlflahbdbdgdf_gamepad';
          var gamepad_a = scope.navigator;
          gamepad_a.getGamepads = function () {
            gamepad_triggerblock.title = 'getGamepads';
            document.documentElement.appendChild(gamepad_triggerblock);
            return false;
          };
        }
        /* WebVR */
        if (webvr == 'true') {
          var webvr_triggerblock = scope.document.createElement('div');
          webvr_triggerblock.className =
            'scriptsafe_oiigbmnaadbkfbmpbfijlflahbdbdgdf_webvr';
          var webvr_a = scope.navigator;
          webvr_a.getVRDisplays = function () {
            webvr_triggerblock.title = 'getVRDisplays';
            document.documentElement.appendChild(webvr_triggerblock);
            return false;
          };
        }
        /* Bluetooth */
        if (bluetooth == 'true') {
          if (scope.navigator.bluetooth) {
            var bluetooth_triggerblock = scope.document.createElement('div');
            bluetooth_triggerblock.className =
              'scriptsafe_oiigbmnaadbkfbmpbfijlflahbdbdgdf_bluetooth';
            var bluetooth_a = scope.navigator.bluetooth;
            bluetooth_a.requestDevice = function () {
              bluetooth_triggerblock.title = 'requestDevice';
              document.documentElement.appendChild(bluetooth_triggerblock);
              return false;
            };
          }
        }
        /* Client Rectangles */
        if (clientrects == 'true') {
          var clientrects_triggerblock = scope.document.createElement('div');
          clientrects_triggerblock.className =
            'scriptsafe_oiigbmnaadbkfbmpbfijlflahbdbdgdf_clientrects';
          Element.prototype.getClientRects = function () {
            clientrects_triggerblock.title = 'getClientRects';
            document.documentElement.appendChild(clientrects_triggerblock);
            return [
              { top: 0, bottom: 0, left: 0, right: 0, height: 0, width: 0 },
            ];
          };
        }
        /* Timezone */
        if (timezone != 'false') {
          var timezone_triggerblock = scope.document.createElement('div');
          timezone_triggerblock.className =
            'scriptsafe_oiigbmnaadbkfbmpbfijlflahbdbdgdf_timezone';
          var timezone_a = scope.Date;
          timezone_a.prototype.getTimezoneOffset = function () {
            timezone_triggerblock.title = 'getTimezoneOffset';
            document.documentElement.appendChild(timezone_triggerblock);
            if (timezone == 'random')
              return [
                '720',
                '660',
                '600',
                '570',
                '540',
                '480',
                '420',
                '360',
                '300',
                '240',
                '210',
                '180',
                '120',
                '60',
                '0',
                '-60',
                '-120',
                '-180',
                '-210',
                '-240',
                '-270',
                '-300',
                '-330',
                '-345',
                '-360',
                '-390',
                '-420',
                '-480',
                '-510',
                '-525',
                '-540',
                '-570',
                '-600',
                '-630',
                '-660',
                '-720',
                '-765',
                '-780',
                '-840',
              ][Math.floor(Math.random() * 39)];
            return timezone;
          };
        }
        /* Clipboard */
        if (clipboard == 'true') {
          var clipboard_triggerblock = scope.document.createElement('div');
          clipboard_triggerblock.className =
            'scriptsafe_oiigbmnaadbkfbmpbfijlflahbdbdgdf_clipboard';
          var clipboard_a = document;
          var origExecCommand = clipboard_a.execCommand;
          clipboard_a.execCommand = function () {
            clipboard_triggerblock.title = 'execCommand';
            document.documentElement.appendChild(clipboard_triggerblock);
            if (arguments[0] == 'cut' || arguments[0] == 'copy') return false;
            return origExecCommand.apply(this, arguments);
          };
        }
      }
      processFunctions(window);
      var iwin = HTMLIFrameElement.prototype.__lookupGetter__('contentWindow'),
        idoc = HTMLIFrameElement.prototype.__lookupGetter__('contentDocument');
      Object.defineProperties(HTMLIFrameElement.prototype, {
        contentWindow: {
          get: function () {
            var frame = iwin.apply(this);
            if (
              this.src &&
              this.src.indexOf('//') != -1 &&
              location.host != this.src.split('/')[2]
            )
              return frame;
            try {
              frame.HTMLCanvasElement;
            } catch (err) {
              /* do nothing*/
            }
            processFunctions(frame);
            return frame;
          },
        },
        contentDocument: {
          get: function () {
            if (
              this.src &&
              this.src.indexOf('//') != -1 &&
              location.host != this.src.split('/')[2]
            )
              return idoc.apply(this);
            var frame = iwin.apply(this);
            try {
              frame.HTMLCanvasElement;
            } catch (err) {
              /* do nothing*/
            }
            processFunctions(frame);
            return idoc.apply(this);
          },
        },
      });
    })(
      'block',
      'true',
      'true',
      'true',
      'true',
      'true',
      'true',
      'true',
      'true',
      'false',
      'true',
      'true',
      'true'
    );
  </script>
</html>
